package com.hs.srm.admin.modules.orders.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.hs.srm.admin.modules.orders.entity.ScmPoHeaderEntity;
import com.hs.srm.admin.modules.orders.vo.ScmPoItemVo;

/**
 * 采购订单头信息DAO接口
 * 
 * @author Sunnykid
 *
 * @date 2019年3月17日
 */
public interface ScmPoHeaderDao extends BaseMapper<ScmPoHeaderEntity> {

	/**
	 * 根据订单号查询订单头
	 * @param poNo
	 * @return
	 */
	public ScmPoHeaderEntity getByPoNo(String poNo);

	/**
	 * 查询订单版本号
	 */
	int getEdition();

	/**
	 * 查询订单最大编号
	 */
	public String selectnum();

	/**
	 * 根据stock收货记录查询相应的订单头信息
	 * @return
	 */
	List<ScmPoHeaderEntity> findByStock(RowBounds rowBounds, @Param("ew") Wrapper<ScmPoHeaderEntity> wrapper,
			@Param("params") Map<String, Object> params);

	//分页查询数据
	List<ScmPoItemVo> selectDetailPage(RowBounds rowBounds,
		 @Param("ew") Wrapper<ScmPoItemVo> wrapper, @Param("params") Map<String, Object> params);
	
	//根据id更新供应商id
	int updateVendorById(ScmPoHeaderEntity headerEntity);

	//逻辑删除订单
    boolean updateHeaderDeleteFlag(String poNo);
}
